SPSS ANOVA事后检验
作者:Ruben Geert van den Berg,发表于 ANOVA
目录
- 亚组的描述性统计 (Descriptive Statistics for Subgroups)
- ANOVA - 流程图 (ANOVA - Flowchart)
- SPSS ANOVA 对话框 (SPSS ANOVA Dialogs)
- SPSS ANOVA 输出 (SPSS ANOVA Output)
- SPSS ANOVA - 事后检验输出 (SPSS ANOVA - Post Hoc Tests Output)
- APA 格式报告事后检验 (APA Style Reporting Post Hoc Tests)
ANOVA 中的事后检验 (Post hoc tests) 用于检验每种可能的均值配对 (pair) 之间的差异是否具有统计学意义。本教程将引导您使用 depression.sav 文件进行事后检验并理解其结果,部分数据如下所示。
我们将使用的变量是:
参与者被随机分配到的药物 (medicine)
开始用药 16 周后测量的抑郁程度 (levels of depressiveness)。
我们的研究问题是:某些药物是否比其他药物更能降低抑郁评分?更好的分析方法应该是 ANCOVA (协方差分析),但遗憾的是,没有进行抑郁症的预先测试。
快速数据检查 (Quick Data Check)
在盲目地进行任何分析之前,让我们首先看看我们的数据是否合理。一个好的第一步是检查直方图 (histogram),我将从下面的 SPSS 语法 (SPSS syntax) 中运行它。
***QUICK CHECK DEPENDENT VARIABLE.
**
frequencies bdi
/format notable
/histogram.
结果 (Result)
首先,我们的直方图(如下所示)没有显示任何令人惊讶或警觉的内容。
另请注意,N = 100,因此该变量没有任何 缺失值 (missing values)。最后,可能会有人认为,接近 15 分的单个参与者可能是 异常值 (outlier)。但看起来不太糟糕,所以我们暂时保留它。
亚组的描述性统计 (Descriptive Statistics for Subgroups)
现在,让我们分别为每个药物组运行一些描述性统计。正确的方法是从 A nalyze(分析) C ompare Means(比较平均值)
M eans(平均值),或者简单地输入下面显示的 2 行语法。
***DESCRIPTIVE STATISTICS FOR SUBGROUPS OF CASES.
**
means bdi by medicine
/cells count min max mean median stddev skew kurt.
结果 (Result)
如图所示,我喜欢呈现一个详细的表格,包括每个组的:
- 均值 (mean)
- 中位数 (median) (此处省略)
- 标准差 (standard deviation)
- 偏度 (skewness)
- 峰度 (kurtosis)
但这里最重要的是样本量 (sample sizes),因为这些会影响我们 ANOVA 所需的假设。
另请注意,不同药物之间的平均抑郁评分差异很大。但是,这些都是基于相当小的样本。因此,最大的问题是:我们能对整个群体得出什么结论?也就是说,所有 服用这些药物的人?
ANOVA - 零假设 (Null Hypothesis)
简而言之,我们的 ANOVA 试图通过 否定 (nullifying) 相反的说法来证明某些药物比其他药物更有效。这个零假设指出,所有药物的总体平均抑郁评分都是相等的。在分析样本数据时,ANOVA 将告诉我们这是否可信。但是,为了信任 ANOVA 的结果,这些数据必须满足几个假设。
ANOVA - 假设 (Assumptions)
ANOVA 需要以下假设:
- 独立观察 (independent observations)
- 正态性 (normality):在我们要比较的每个亚群中,因变量必须是 正态分布 (normally distributed)。但是,如果每个 n > 25 左右,则不需要正态性。
- 方差齐性 (homogeneity):在我们要比较的所有亚群中,因变量的方差必须相等。但是,如果所有样本量大致相等,则不需要方差齐性。
现在,只有在样本量差异很大时才需要方差齐性。在这种情况下,可以使用 Levene 检验 (Levene’s test) 来检查是否满足方差齐性。如果不是,该怎么办,请参见 SPSS ANOVA - Levene 检验“显著” (SPSS ANOVA - Levene’s Test “Significant” )。
ANOVA - 流程图 (Flowchart)
下面的流程图总结了何时/如何检查 ANOVA 假设以及如果违反了这些假设该怎么办。
请注意,depression.sav 包含 4 个药物样本,n = 25 个独立观察值。因此,它满足所有 ANOVA 假设。
SPSS ANOVA 对话框 (Dialogs)
我们将从 A nalyze(分析) C ompare Means(比较平均值)
O ne-Way ANOVA(单因素方差分析)运行我们的 ANOVA,如下所示。
接下来,让我们填写对话框,如下所示。
估计效应量 (Estimate effect size…) 仅适用于 SPSS 27 或更高版本。如果您使用的是旧版本,则可以从 A nalyze(分析)
C ompare Means(比较平均值)
M eans(平均值)(“选项”下的“ANOVA 表”)中获取它。
Tukey’s HSD(“真实显著差异”)是 ANOVA 最常见的事后检验。它列在“假定方差相等”下,指的是方差齐性假设。但是,由于我们的样本量都相等,因此我们的数据不需要这个假设。
完成这些步骤将产生以下语法。
***BASIC ANOVA EFFECT SIZE AND POST HOC TESTS.
**
ONEWAY bdi BY medicine
/ES=OVERALL
/MISSING ANALYSIS
/CRITERIA=CILEVEL(0.95)
/POSTHOC=TUKEY ALPHA(0.05).
SPSS ANOVA 输出 (Output)
首先,下面的 ANOVA 表解决了所有总体均值相等的零假设。显著性水平 (significance level) 表明 p < .001,因此我们拒绝此零假设。下图说明了如何报告此结果。
此表中缺少的是 eta 平方,表示为 η2。在 SPSS 27 及更高版本中,我们在下面的下一个输出表中找到它。
Eta 平方是一种 效应量度量 (effect size measure):它是一个单一的标准化数字,表示几个样本均值 差异有多大(即,它们之间的距离有多远)。通常接受的 eta 平方经验法则是:
- η2 = 0.01 表示 小 效应
- η2 = 0.06 表示 中等 效应
- η2 = 0.14 表示 大 效应
对于我们的示例,η2 = 0.39 是一个巨大的效应:我们的 4 种药物导致平均抑郁评分差异很大。
这似乎完成了我们的分析,但我们仍然不知道一件事:究竟 哪个 均值与 哪个 均值不同?我们将在接下来讨论的事后检验中回答这个问题。
SPSS ANOVA - 事后检验输出 (Post Hoc Tests Output)
下表显示了每对均值之间的差异是否具有统计学意义。它还包括这些差异的 95% 置信区间 (confidence intervals)。
在我们选择的 α = .05 处“显著 (significant)”的均值差异会被标记。请注意,除了安慰剂与顺势疗法之外,每个均值都与另一个均值不同。
如果我们仔细观察确切的双尾 p 值,我们会发现除了上述比较之外,它们都 < .01。
鉴于最后一个发现,我建议以 α = .01 重新运行我们的事后检验,以再次确认这些发现。以下语法正是这样做的。
***BASIC ANOVA WITH ALPHA = 0.01 FOR POST HOC TESTS.
**
ONEWAY bdi BY medicine
/ES=OVERALL
/MISSING ANALYSIS
/CRITERIA=CILEVEL(0.95)
/POSTHOC=TUKEY ALPHA(0.01).
APA 格式报告事后检验 (APA Style Reporting Post Hoc Tests)
下表显示了如何在 APA 风格 (APA style) 中报告事后检验。
此表本身是使用 MEANS 命令创建的,就像我们用于 亚组的描述性统计 一样。下标基于我们 ANOVA 输出中的 Homogeneous Subsets 表。
请注意,我们选择 α = .01 而不是通常的 α = .05。这对于我们的示例分析来说更具信息性,因为我们所有的 p 值 < .05 也 < .01。
这个 APA 表也 似乎 可以从 A nalyze(分析) T ables(表)
C ustom Tables(定制表)中获得,但我不建议这样做:定制表中的 p 值似乎基于 Bonferroni 校正的 独立样本 t 检验 (independent samples t-tests) 而不是 Tukey’s HSD。对此的一般观点是,此过程过于保守。
最终说明 (Final Notes)
好的,所以 ANOVA 与事后检验的常见程序是:
- 运行基本的 ANOVA,看看总体均值是否 都 相等。这通常被称为 总括检验 (omnibus test)(omnibus 是拉丁语,意思是“关于所有事物”之类的东西);
- 只有当我们拒绝这个总体零假设时,才使用 事后检验 (post hoc tests)(post hoc 是拉丁语,意思是“在那之后”)找出究竟哪些均值对不同。
如果总括检验 不 具有统计学意义,通常不赞成运行事后检验。某些情况下可能会证明这样做是合理的,但让我们将该讨论留到以后再进行。